package com.pattern.observer.service;

/**
 * 目标(subject)接口
 */
public interface Subject {
    /**
     * 一个注册观察者对象的接口
     * @param o
     */
    void attach(Observer o);

    /**
     * 一个删除观察者对象的接口
     * @param o
     */
    void detach(Observer o);

    /**
     * 一个当目标状态发生改变时,发布通知给观察者对象的接口
     */
    void notice();
}
